﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace WP7SignalRHelperClient
{
    // Custom delegate.
    public delegate void SignalRServerHandler(object sender, SignalREventArgs e);

    public interface ISignalRHub
    {
        // Custom event to act when something happens on SignalR Server.
        event SignalRServerHandler SignalRServerNotification;       

        // Operations on SignalR server.
        void MapIt (MapClient phoneToMap);
        void UnMapIt (MapClient phoneToUnmap);

        void JoinChat (ChatClient phoneChatMessage);
        void Chat (ChatClient phoneChatMessage);
        void LeaveChat (ChatClient phoneChatMessage);

        void FollowLiveGame(GameScoreClient gameFollowingPhone);

        void StartObjectSync(ObjectSyncClient objSyncFromPhone);
        void DoObjectSync(ObjectSyncClient objSyncFromPhone);
    }
}
